iT邦幫忙

2021 iThome 鐵人賽

DAY 7
0
Modern Web

YDKJS 一邊讀 You Don't Know JS Yet 一邊卡關一邊弄懂的日子 ԅ(≖‿≖ԅ)系列 第 7

Day07 - this&Object Prototypes Ch3 Objects - Contents - Immutability

  • 分享至 

  • xImage
  •  

今天看 Immutability(不可變),作者提供適用於不同情境的四種方法,將物件設定為不可更變的,但這些方法皆為 shallow immutability

  1. Object constant:將物件的 property 設為無法更改 value 以及無法更改該 property 的其他設定
Object.defineProperty( myObj, "food",
    {     value: "燃面",
          writable: false,
          configurable: false
    }
)

  1. Prevent extensions:該物件無法新增新的 property 至該物件
Object.preventExtensions( myObj )

  1. Seal:該物件無法新增新的 property,並且既存的 properties 無法更改該 property 的其他設定
Object.seal( myObj )

  1. Freeze:該物件無法新增新的 property,並且既存的 properties 無法更改該 property 的其他設定也不能更改其 value
Object.freeze( myObj )

若上述理解有誤,都在麻煩提點了~~感謝您 ԅ(≖‿≖ԅ)


上一篇
Day06 - this&Object Prototypes Ch3 Objects - Contents - Property Descriptors
下一篇
Day08 - this&Object Prototypes Ch3 Objects - Contents - [[Get]]
系列文
YDKJS 一邊讀 You Don't Know JS Yet 一邊卡關一邊弄懂的日子 ԅ(≖‿≖ԅ)30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言